import { BasicColumn } from '/@/components/Table';
import { FormSchema } from '/@/components/Table';
import { rules } from '/@/utils/helper/validator';
import { render } from '/@/utils/common/renderUtils';
//列表数据
export const columns : BasicColumn[] = [
	{
		title: '创建日期',
		align: "center",
		dataIndex: 'createTime'
	},
	{
		title: '标题',
		align: "center",
		dataIndex: 'title'
	},
	{
		title: '产品or行程',
		align: "center",
		dataIndex: 'pdtId_dictText'
	},
	{
		title: '金额',
		align: "center",
		sorter: true,
		dataIndex: 'price'
	},
	{
		title: '获得方式',
		align: "center",
		dataIndex: 'couponType_dictText'
	},
	{
		title: '使用范围',
		align: "center",
		dataIndex: 'useType_dictText'
	},
	{
		title: '租户',
		align: "center",
		dataIndex: 'tenantId'
	},
];
//查询数据
export const searchFormSchema : FormSchema[] = [

	{
		label: "获得方式",
		field: 'couponType',
		component: 'JDictSelectTag',
		componentProps: {
			dictCode: "release_mode"
		},
		//colProps: {span: 6},
	},
	{
		label: "产品",
		field: 'pdtId',
		component: 'JSearchSelect',
		componentProps: {
			dict: "couple_shop_pdt,title,id"
		},
		//colProps: {span: 6},
	},
	{
		label: "使用范围",
		field: 'useType',
		component: 'JDictSelectTag',
		componentProps: {
			dictCode: "use_mode"
		},
		//colProps: {span: 6},
	},
];
//表单数据
export const formSchema : FormSchema[] = [
	{
		label: '标题',
		field: 'title',
		component: 'Input',
	},
	{
		label: '金额',
		field: 'price',
		component: 'InputNumber',
	},
	{
		label: '获得方式',
		field: 'couponType',
		component: 'JDictSelectTag',
		componentProps: {
			dictCode: "release_mode"
		},
	},
	{
		label: '使用范围',
		field: 'useType',
		component: 'JDictSelectTag',
		componentProps: {
			dictCode: "use_mode"
		},
	},
	{
		label: "产品",
		field: 'pdtId',
		component: 'JSearchSelect',
		componentProps: {
			dict: "couple_shop_pdt,title,id",
			async: true,
			pageSize:3
		},
		//colProps: {span: 6},
		show: ({ values }) => {
			return values.useType == '2'
		}
	},
	{
		label: "行程",
		field: 'pdtId',
		component: 'JSearchSelect',
		componentProps: {
			dict: "BS_TravelGroup_MainTuorTravelLineRecord,travelTitle,id",
			async: true,
			pageSize:3
		},
		show: ({ values }) => {
			return values.useType == '3'
		}
		//colProps: {span: 6},
	},
	// TODO 主键隐藏字段，目前写死为ID
	{
		label: '',
		field: 'id',
		component: 'Input',
		show: false
	},
];



/**
* 流程表单调用这个方法获取formSchema
* @param param
*/
export function getBpmFormSchema(_formData) : FormSchema[] {
	// 默认和原始表单保持一致 如果流程中配置了权限数据，这里需要单独处理formSchema
	return formSchema;
}